#pragma once

#include "../TdsReqHandler.h"
#include <set>
#include <qbprotocol/include/SSQBModel.h>
#include <qbtools/message/MessagePoster.h>

class TFSettlementHandler : public TdsCmdHandler, public MessageReceiver
{
Q_OBJECT
public:
    Q_INVOKABLE  TFSettlementHandler():TdsCmdHandler(kPush) {}
    bool processCmd(const QJsonObject& cmdObj, const ReqInfo& reqinfo, bool unReg = false) override;

	void onDataArrived(const qb::SSAckMsg& msg) override;

protected:
	bool parseCmd(const QJsonObject& cmdObj);

private:
	std::set<std::string> m_IdList;
	bool m_ReqAll = false;
	xQBTfSettlementPriceReq	m_req;
	ReqInfo	m_reqInfo;
};
